//数组结尾内容

//二维数组本质上也就是一维数组 只不过每个元素又是一个一维数组

import java.util.Arrays;

//基本语法
//数据类型[][] 数组名称 = new 数据类型[行数][列数]{初始化内容}
//public class Test {

    //    public static void main(String[] args) {
//        int[][] array1 = new int[][]{{1,2,3},{4,5,6}};
//        int[][] array2 = new int[2][3];
//        for (int i = 0; i < 2; i++) {
//            for (int j = 0; j < 3; j++) {
//                System.out.print(array1[i][j] + " ");
//            }
//            System.out.println();
//        }
//    }


//    public static void main(String[] args) {
//        int[][] array1 = new int[][]{{1, 2, 3}, {4, 5, 6}};
//        for (int i = 0; i < array1.length; i++) {
//            for (int j = 0; j < array1[i].length; j++) {
//                System.out.print(array1[i][j] + " ");
//            }
//            System.out.println();
//        }
//    }

    //二维数组的每个元素都是一维数组的证明
//    public static void main(String[] args) {
//        int[][] arr = new int[][]{{1,2,3},{4,5,6}};
//        System.out.println(arr[0]);//[I@6acbcfc0
//        System.out.println(arr[1]);//[I@5f184fc6
//        System.out.println(Arrays.toString(arr[0]));//[1, 2, 3]
//        System.out.println(Arrays.toString(arr[1]));//[4, 5, 6]
//        System.out.println(arr[0].length);//3
//        System.out.println(arr[1].length);//3
//        System.out.println(arr.length);//2

        //二维数组的打印方法
//        System.out.println(Arrays.toString(arr));//[[I@6acbcfc0, [I@5f184fc6]
//        System.out.println(Arrays.deepToString(arr));//[[1, 2, 3], [4, 5, 6]]

        //二维数组可以是不规则的
//        int[][] arr2 = new int[2][];
//        arr2[0] = new int[]{1,2,3,4,5,6,7};
//        arr2[1] = new int[]{2,3,5};
//        System.out.println(Arrays.deepToString(arr2));
//
//        int[][] arr3 = new int[3][];//二维数组其实是在每一行上先各存一个引用类型，该引用指向真正的数据
//        //所以会打印null
//        System.out.println(Arrays.deepToString(arr3));

        //下面代码则会Null Pointer Exception
/*        for (int i = 0; i < arr3.length; i++) {
            for (int j = 0; j < arr3[i].length; j++) {
                System.out.print(arr[i][j] + " ");
            }
            System.out.println();
        }*/

//    }
//}
